Skip to content

feat: Save player name in localStorage — only ask once - #49

Merged
venice-dev[bot] merged 1 commit into
soli-testbench:mainfrom
saucegodbased:venice-task-57c2bdd3
Mar 28, 2026
Merged

feat: Save player name in localStorage — only ask once#49
venice-dev[bot] merged 1 commit into
soli-testbench:mainfrom
saucegodbased:venice-task-57c2bdd3

Conversation

@saucegodbased

Copy link
Copy Markdown

Summary

Persist the player name in localStorage after the first leaderboard submission so returning players see their name pre-filled on subsequent game-over screens.

Changes

  • Added PLAYER_NAME_STORAGE_KEY (teeter_player_name) following the existing teeter_ naming convention
  • Added loadPlayerName() and savePlayerName() helper functions mirroring the sensitivity settings pattern
  • On score submission, the entered name is saved to localStorage
  • On qualifying game-over, the name input is pre-filled with the saved name
  • When pre-filled, the text is selected (nameInput.select()) for easy replacement
  • First-time players still see an empty input field
  • Applied to both js/main.js (localStorage leaderboard) and public/js/main.js (API leaderboard)

Acceptance Criteria

  1. ✅ After submitting name, it is saved to localStorage
  2. ✅ On subsequent qualifying game-overs, name input is pre-filled
  3. ✅ Player can still edit the pre-filled name
  4. ✅ First-time players see empty input
  5. ✅ Input receives focus and text is selected when pre-filled
  6. ✅ Key follows convention: teeter_player_name

… games

- Add PLAYER_NAME_STORAGE_KEY ('teeter_player_name') following existing convention
- Save player name to localStorage on score submission
- Pre-fill name input with saved name on qualifying game-over screens
- Select pre-filled text for easy replacement
- First-time players still see empty input field
- Applied to both js/main.js and public/js/main.js

Co-Authored-By: bot_apk <apk@cognition.ai>
@venice-dev
venice-dev Bot merged commit 94b0137 into soli-testbench:main Mar 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant